package com.epoch.utils;

import lombok.Data;
import org.springframework.context.annotation.Configuration;

import java.io.UnsupportedEncodingException;
import java.nio.charset.StandardCharsets;
import java.util.Base64;

/**
 * @author admin
 */
@Data
@Configuration
public class Base {
    private String origin;
    private String decode;
    private String encode;

    /**
     * 使用基本编码进行两次加密操作
     * @param origin 加密前的数据
     * @return 加密后的数据
     */
    public static String encode(String origin){
        //进行两次加密操作
        String mid = Base64.getEncoder().encodeToString(origin.getBytes(StandardCharsets.UTF_8));
        return Base64.getEncoder().encodeToString(mid.getBytes(StandardCharsets.UTF_8));
    }

    /**
     * 使用基本编码进行两次解码操作
     * @param origin
     * @return 两次解密操作后的结果
     * @throws UnsupportedEncodingException
     */
    public static String decode(String origin) throws UnsupportedEncodingException {
        //进行两次解密操作
        String mid = new String(Base64.getDecoder().decode(origin),"utf-8");
        return new String(Base64.getDecoder().decode(mid),"utf-8");
    }

}
